package seGobangClient.uiSystem3D;

import javax.swing.JFrame;
import seGobangClient.Options;
import seGobangClient.Rule;

/**
 *
 * @author plus
 */
public class Config3D implements IScene3D, seGobangClient.configMenu.IConfigScene{
    private static OptionScene OS;
    private static JFrame frame;
    private static getpane pane;
    private static boolean isInited=false;

    public Config3D(final JFrame container, final getpane mainPane) {
        OS=new OptionScene();
        frame=container;
        pane=mainPane;
    }
    
    public void setUpScene() {
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        SceneManager.canvas.stopRenderer();
        OS.initOptionUI(frame, pane,isInited);
            isInited=true;
        SceneManager.canvas.setVisible(false);
    }

    public void shutDown() {
        frame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
        SceneManager.canvas.setVisible(true);
        OS.clear();
        SceneManager.canvas.startRenderer();
    }
    
    public int getGraphic_Message()
    {
        return OS.getGraphic_Message();
    }

    public int getMusicVolum_Message()
    {
        return OS.getMusicVolum_Message();
    }

    public int getSFXVolum_Message()
    {
        return OS.getSFXVolum_Message();
    }

    public int getTimeLimit_Message()
    {
        return OS.getTimeLimit_Message();
    }

    public int getRegretTimes_Message()
    {
        return OS.getRegretTimes_Message();
    }

    public void Options_perform(Options op)
    {
        OS.Options_perform(op);
    }

    public void Rule_perform(Rule rl)
    {
        OS.Rule_perform(rl);
    }

    public boolean getforbids_Message()
    {
        return OS.getforbids_Message();
    }
}
